Jrdrecovery
. It ll error on finding /cache/update.zip
and wipe the main partition anyway. That ll leave you in a boot loop where the device boots the recovery partition which tries to install /cache/update.zip
which of course still doesn t exist.
So. Where next? First, I need to get the device into a state where I can actually do something other than watch it boot into recovery, fail to flash and reboot. Best guess at present is to try and get it to enter the Qualcomm EDL (Emergency Download) mode. That might be possible with a custom USB cable that grounds D+ on boot. Alternatively I need to probe some of the other test points on the PCB and see if grounding any of those helps enter EDL mode. I then need a suitable firehose OEM-signed programmer image. And then I need to actually get hold of a proper EE40VB firmware image, either via one of the OTA update files or possibly via an Alcatel ADSU image (though no idea how to get hold of one, other than by posting to a random GSM device forum and hoping for the kindness of strangers). More updates if/when I make progress
Format: Log Type - Time(microsec) - Message - Optional Info
Log Type: B - Since Boot(Power On Reset), D - Delta, S - Statistic
S - QC_IMAGE_VERSION_STRING=BOOT.BF.3.1.2-00053
S - IMAGE_VARIANT_STRING=LAATANAZA
S - OEM_IMAGE_VERSION_STRING=linux3
S - Boot Config, 0x000002e1
B - 105194 - SBL1, Start
D - 61885 - QSEE Image Loaded, Delta - (451964 Bytes)
D - 30286 - RPM Image Loaded, Delta - (151152 Bytes)
B - 459330 - Roger:boot_jrd_oem_main
B - 461526 - Welcome to key_check_poweron!!!
B - 466436 - REG0x00, rc=47
B - 469120 - REG0x01, rc=1f
B - 472018 - REG0x02, rc=1c
B - 474885 - REG0x03, rc=47
B - 477782 - REG0x04, rc=b2
B - 480558 - REG0x05, rc=
B - 483272 - REG0x06, rc=9e
B - 486139 - REG0x07, rc=
B - 488854 - REG0x08, rc=a4
B - 491721 - REG0x09, rc=80
B - 494130 - bq24295_probe: vflt/vsys/vprechg=0mV/0mV/0mV, tprechg/tfastchg=0Min/0Min, [0C, 0C]
B - 511546 - come to calculate vol and temperature!!
B - 511637 - ##############battery_core_convert_vntc: NTC_voltage=1785690
B - 517280 - battery_core_convert_vntc: <-44C, 1785690uV>, present=0
B - 529358 - bq24295_set_current_limit: setting=0mA, mode=-1, input/fastchg/prechg/termchg=-1mA/0mA/0mA/0mA
B - 534360 - bq24295_set_charge_current, rc=0,reg_val=0,i=0
B - 539636 - bq24295_enable_charge: setting=0, chg_enable=-1, otg_enable=0
B - 546072 - bq24295_enable_charging: enable_charging=0
B - 552172 - bq24295_set_current_limit: setting=0mA, mode=-1, input/fastchg/prechg/termchg=-1mA/0mA/0mA/0mA
B - 561566 - bq24295_set_charge_current, rc=0,reg_val=0,i=0
B - 567056 - bq24295_enable_charge: setting=0, chg_enable=0, otg_enable=0
B - 579286 - come to calculate vol and temperature!!
B - 579378 - ##############battery_core_convert_vntc: NTC_voltage=1785777
B - 585539 - battery_core_convert_vntc: <-44C, 1785777uV>, present=0
B - 597617 - charge_main: battery is plugout!!
B - 597678 - Welcome to pca955x_probe!!!
B - 601063 - pca955x_probe: PCA955X probed successfully!
D - 27511 - APPSBL Image Loaded, Delta - (179348 Bytes)
B - 633271 - QSEE Execution, Start
D - 213 - QSEE Execution, Delta
B - 638944 - >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>Start writting JRD RECOVERY BOOT
B - 650107 - >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>Start writting RECOVERY BOOT
B - 653218 - >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>read_buf[0] == 0
B - 659044 - SBL1, End
D - 556137 - SBL1, Delta
S - Throughput, 2000 KB/s (782884 Bytes, 278155 us)
S - DDR Frequency, 240 MHz
Android Bootloader - UART_DM Initialized!!!
[0] welcome to lk
[0] SCM call: 0x2000601 failed with :fffffffc
[0] Failed to initialize SCM
[10] platform_init()
[10] target_init()
[10] smem ptable found: ver: 4 len: 17
[10] ERROR: No devinfo partition found
[10] Neither 'config' nor 'frp' partition found
[30] voltage of NTC is 1789872!
[30] voltage of BAT is 3179553!
[30] usb present is 1!
[30] Loading (boot) image (4171776): start
[530] Loading (boot) image (4171776): done
[540] DTB Total entry: 25, DTB version: 3
[540] Using DTB entry 0x00000129/00010000/0x00000008/0 for device 0x00000129/00010000/0x00010008/0
[560] JRD_CHG_OFF_FEATURE!
[560] come to jrd_target_pause_for_battery_charge!
[570] power_on_status.hard_reset = 0x0
[570] power_on_status.smpl = 0x0
[570] power_on_status.rtc = 0x0
[580] power_on_status.dc_chg = 0x0
[580] power_on_status.usb_chg = 0x0
[580] power_on_status.pon1 = 0x1
[590] power_on_status.cblpwr = 0x0
[590] power_on_status.kpdpwr = 0x0
[590] power_on_status.bugflag = 0x0
[590] cmdline: noinitrd rw console=ttyHSL0,115200,n8 androidboot.hardware=qcom ehci-hcd.park=3 msm_rtb.filter=0x37 lpm_levels.sleep_disabled=1 earlycon=msm_hsl_uart,0x78b3000 androidboot.serialno=7e6ba58c androidboot.baseband=msm rootfstype=ubifs rootflags=b
[620] Updating device tree: start
[720] Updating device tree: done
[720] booting linux @ 0x80008000, ramdisk @ 0x80008000 (0), tags/device tree @ 0x81e00000
[ 0.000000] Booting Linux on physical CPU 0x0
[ 0.000000] Linux version 3.18.20 (linux3@linux3) (gcc version 4.9.2 (GCC) ) #1 PREEMPT Thu Aug 10 11:57:07 CST 2017
[ 0.000000] CPU: ARMv7 Processor [410fc075] revision 5 (ARMv7), cr=10c53c7d
[ 0.000000] CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing instruction cache
[ 0.000000] Machine model: Qualcomm Technologies, Inc. MDM 9607 MTP
[ 0.000000] Early serial console at I/O port 0x0 (options '')
[ 0.000000] bootconsole [uart0] enabled
[ 0.000000] Reserved memory: reserved region for node 'modem_adsp_region@0': base 0x82a00000, size 56 MiB
[ 0.000000] Reserved memory: reserved region for node 'external_image_region@0': base 0x87c00000, size 4 MiB
[ 0.000000] Removed memory: created DMA memory pool at 0x82a00000, size 56 MiB
[ 0.000000] Reserved memory: initialized node modem_adsp_region@0, compatible id removed-dma-pool
[ 0.000000] Removed memory: created DMA memory pool at 0x87c00000, size 4 MiB
[ 0.000000] Reserved memory: initialized node external_image_region@0, compatible id removed-dma-pool
[ 0.000000] cma: Reserved 4 MiB at 0x87800000
[ 0.000000] Memory policy: Data cache writeback
[ 0.000000] CPU: All CPU(s) started in SVC mode.
[ 0.000000] Built 1 zonelists in Zone order, mobility grouping on. Total pages: 17152
[ 0.000000] Kernel command line: noinitrd rw console=ttyHSL0,115200,n8 androidboot.hardware=qcom ehci-hcd.park=3 msm_rtb.filter=0x37 lpm_levels.sleep_disabled=1 earlycon=msm_hsl_uart,0x78b3000 androidboot.serialno=7e6ba58c androidboot.baseband=msm rootfstype=ubifs rootflags=bulk_read root=ubi0:rootfs ubi.mtd=16
[ 0.000000] PID hash table entries: 512 (order: -1, 2048 bytes)
[ 0.000000] Dentry cache hash table entries: 16384 (order: 4, 65536 bytes)
[ 0.000000] Inode-cache hash table entries: 8192 (order: 3, 32768 bytes)
[ 0.000000] Memory: 54792K/69632K available (5830K kernel code, 399K rwdata, 2228K rodata, 276K init, 830K bss, 14840K reserved)
[ 0.000000] Virtual kernel memory layout:
[ 0.000000] vector : 0xffff0000 - 0xffff1000 ( 4 kB)
[ 0.000000] fixmap : 0xffc00000 - 0xfff00000 (3072 kB)
[ 0.000000] vmalloc : 0xc8800000 - 0xff000000 ( 872 MB)
[ 0.000000] lowmem : 0xc0000000 - 0xc8000000 ( 128 MB)
[ 0.000000] modules : 0xbf000000 - 0xc0000000 ( 16 MB)
[ 0.000000] .text : 0xc0008000 - 0xc07e6c38 (8060 kB)
[ 0.000000] .init : 0xc07e7000 - 0xc082c000 ( 276 kB)
[ 0.000000] .data : 0xc082c000 - 0xc088fdc0 ( 400 kB)
[ 0.000000] .bss : 0xc088fe84 - 0xc095f798 ( 831 kB)
[ 0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
[ 0.000000] Preemptible hierarchical RCU implementation.
[ 0.000000] NR_IRQS:16 nr_irqs:16 16
[ 0.000000] GIC CPU mask not found - kernel will fail to boot.
[ 0.000000] GIC CPU mask not found - kernel will fail to boot.
[ 0.000000] mpm_init_irq_domain(): Cannot find irq controller for qcom,gpio-parent
[ 0.000000] MPM 1 irq mapping errored -517
[ 0.000000] Architected mmio timer(s) running at 19.20MHz (virt).
[ 0.000011] sched_clock: 56 bits at 19MHz, resolution 52ns, wraps every 3579139424256ns
[ 0.007975] Switching to timer-based delay loop, resolution 52ns
[ 0.013969] Switched to clocksource arch_mem_counter
[ 0.019687] Console: colour dummy device 80x30
[ 0.023344] Calibrating delay loop (skipped), value calculated using timer frequency.. 38.40 BogoMIPS (lpj=192000)
[ 0.033666] pid_max: default: 32768 minimum: 301
[ 0.038411] Mount-cache hash table entries: 1024 (order: 0, 4096 bytes)
[ 0.044902] Mountpoint-cache hash table entries: 1024 (order: 0, 4096 bytes)
[ 0.052445] CPU: Testing write buffer coherency: ok
[ 0.057057] Setting up static identity map for 0x8058aac8 - 0x8058ab20
[ 0.064242]
[ 0.064242] **********************************************************
[ 0.071251] ** NOTICE NOTICE NOTICE NOTICE NOTICE NOTICE NOTICE **
[ 0.077817] ** **
[ 0.084302] ** trace_printk() being used. Allocating extra memory. **
[ 0.090781] ** **
[ 0.097320] ** This means that this is a DEBUG kernel and it is **
[ 0.103802] ** unsafe for produciton use. **
[ 0.110339] ** **
[ 0.116850] ** If you see this message and you are not debugging **
[ 0.123333] ** the kernel, report this immediately to your vendor! **
[ 0.129870] ** **
[ 0.136380] ** NOTICE NOTICE NOTICE NOTICE NOTICE NOTICE NOTICE **
[ 0.142865] **********************************************************
[ 0.150225] MSM Memory Dump base table set up
[ 0.153739] MSM Memory Dump apps data table set up
[ 0.168125] VFP support v0.3: implementor 41 architecture 2 part 30 variant 7 rev 5
[ 0.176332] pinctrl core: initialized pinctrl subsystem
[ 0.180930] regulator-dummy: no parameters
[ 0.215338] NET: Registered protocol family 16
[ 0.220475] DMA: preallocated 256 KiB pool for atomic coherent allocations
[ 0.284034] cpuidle: using governor ladder
[ 0.314026] cpuidle: using governor menu
[ 0.344024] cpuidle: using governor qcom
[ 0.355452] msm_watchdog b017000.qcom,wdt: wdog absent resource not present
[ 0.361656] msm_watchdog b017000.qcom,wdt: MSM Watchdog Initialized
[ 0.371373] irq: no irq domain found for /soc/pinctrl@1000000 !
[ 0.381268] spmi_pmic_arb 200f000.qcom,spmi: PMIC Arb Version-2 0x20010000
[ 0.389733] platform 4080000.qcom,mss: assigned reserved memory node modem_adsp_region@0
[ 0.397409] mem_acc_corner: 0 <--> 0 mV
[ 0.401937] hw-breakpoint: found 5 (+1 reserved) breakpoint and 4 watchpoint registers.
[ 0.408966] hw-breakpoint: maximum watchpoint size is 8 bytes.
[ 0.416287] __of_mpm_init(): MPM driver mapping exists
[ 0.420940] msm_rpm_glink_dt_parse: qcom,rpm-glink compatible not matches
[ 0.427235] msm_rpm_dev_probe: APSS-RPM communication over SMD
[ 0.432977] smd_open() before smd_init()
[ 0.437544] msm_mpm_dev_probe(): Cannot get clk resource for XO: -517
[ 0.445730] smd_channel_probe_now: allocation table not initialized
[ 0.453100] mdm9607_s1: 1050 <--> 1350 mV at 1225 mV normal idle
[ 0.458566] spm_regulator_probe: name=mdm9607_s1, range=LV, voltage=1225000 uV, mode=AUTO, step rate=4800 uV/us
[ 0.468817] cpr_efuse_init: apc_corner: efuse_addr = 0x000a4000 (len=0x1000)
[ 0.475353] cpr_read_fuse_revision: apc_corner: fuse revision = 2
[ 0.481345] cpr_parse_speed_bin_fuse: apc_corner: [row: 37]: 0x79e8bd327e6ba58c, speed_bits = 4
[ 0.490124] cpr_pvs_init: apc_corner: pvs voltage: [1050000 1100000 1275000] uV
[ 0.497342] cpr_pvs_init: apc_corner: ceiling voltage: [1050000 1225000 1350000] uV
[ 0.504979] cpr_pvs_init: apc_corner: floor voltage: [1050000 1050000 1150000] uV
[ 0.513125] i2c-msm-v2 78b8000.i2c: probing driver i2c-msm-v2
[ 0.518335] i2c-msm-v2 78b8000.i2c: error on clk_get(core_clk):-517
[ 0.524478] i2c-msm-v2 78b8000.i2c: error probe() failed with err:-517
[ 0.531111] i2c-msm-v2 78b7000.i2c: probing driver i2c-msm-v2
[ 0.536788] i2c-msm-v2 78b7000.i2c: error on clk_get(core_clk):-517
[ 0.542886] i2c-msm-v2 78b7000.i2c: error probe() failed with err:-517
[ 0.549618] i2c-msm-v2 78b9000.i2c: probing driver i2c-msm-v2
[ 0.555202] i2c-msm-v2 78b9000.i2c: error on clk_get(core_clk):-517
[ 0.561374] i2c-msm-v2 78b9000.i2c: error probe() failed with err:-517
[ 0.570613] msm-thermal soc:qcom,msm-thermal: msm_thermal:Failed reading node=/soc/qcom,msm-thermal, key=qcom,core-limit-temp. err=-22. KTM continues
[ 0.583049] msm-thermal soc:qcom,msm-thermal: probe_therm_reset:Failed reading node=/soc/qcom,msm-thermal, key=qcom,therm-reset-temp err=-22. KTM continues
[ 0.596926] msm_thermal:msm_thermal_dev_probe Failed reading node=/soc/qcom,msm-thermal, key=qcom,online-hotplug-core. err:-517
[ 0.609370] sps:sps is ready.
[ 0.613137] msm_rpm_glink_dt_parse: qcom,rpm-glink compatible not matches
[ 0.619020] msm_rpm_dev_probe: APSS-RPM communication over SMD
[ 0.625773] mdm9607_s2: 750 <--> 1275 mV at 750 mV normal idle
[ 0.631584] mdm9607_s3_level: 0 <--> 0 mV at 0 mV normal idle
[ 0.637085] mdm9607_s3_level_ao: 0 <--> 0 mV at 0 mV normal idle
[ 0.643092] mdm9607_s3_floor_level: 0 <--> 0 mV at 0 mV normal idle
[ 0.649512] mdm9607_s3_level_so: 0 <--> 0 mV at 0 mV normal idle
[ 0.655750] mdm9607_s4: 1800 <--> 1950 mV at 1800 mV normal idle
[ 0.661791] mdm9607_l1: 1250 mV normal idle
[ 0.666090] mdm9607_l2: 1800 mV normal idle
[ 0.670276] mdm9607_l3: 1800 mV normal idle
[ 0.674541] mdm9607_l4: 3075 mV normal idle
[ 0.678743] mdm9607_l5: 1700 <--> 3050 mV at 1700 mV normal idle
[ 0.684904] mdm9607_l6: 1700 <--> 3050 mV at 1700 mV normal idle
[ 0.690892] mdm9607_l7: 1700 <--> 1900 mV at 1700 mV normal idle
[ 0.697036] mdm9607_l8: 1800 mV normal idle
[ 0.701238] mdm9607_l9: 1200 <--> 1250 mV at 1200 mV normal idle
[ 0.707367] mdm9607_l10: 1050 mV normal idle
[ 0.711662] mdm9607_l11: 1800 mV normal idle
[ 0.716089] mdm9607_l12_level: 0 <--> 0 mV at 0 mV normal idle
[ 0.721717] mdm9607_l12_level_ao: 0 <--> 0 mV at 0 mV normal idle
[ 0.727946] mdm9607_l12_level_so: 0 <--> 0 mV at 0 mV normal idle
[ 0.734099] mdm9607_l12_floor_lebel: 0 <--> 0 mV at 0 mV normal idle
[ 0.740706] mdm9607_l13: 1800 <--> 2850 mV at 2850 mV normal idle
[ 0.746883] mdm9607_l14: 2650 <--> 3000 mV at 2650 mV normal idle
[ 0.752515] msm_mpm_dev_probe(): Cannot get clk resource for XO: -517
[ 0.759036] cpr_efuse_init: apc_corner: efuse_addr = 0x000a4000 (len=0x1000)
[ 0.765807] cpr_read_fuse_revision: apc_corner: fuse revision = 2
[ 0.771809] cpr_parse_speed_bin_fuse: apc_corner: [row: 37]: 0x79e8bd327e6ba58c, speed_bits = 4
[ 0.780586] cpr_pvs_init: apc_corner: pvs voltage: [1050000 1100000 1275000] uV
[ 0.787808] cpr_pvs_init: apc_corner: ceiling voltage: [1050000 1225000 1350000] uV
[ 0.795443] cpr_pvs_init: apc_corner: floor voltage: [1050000 1050000 1150000] uV
[ 0.803094] cpr_init_cpr_parameters: apc_corner: up threshold = 2, down threshold = 3
[ 0.810752] cpr_init_cpr_parameters: apc_corner: CPR is enabled by default.
[ 0.817687] cpr_init_cpr_efuse: apc_corner: [row:65] = 0x15000277277383
[ 0.824272] cpr_init_cpr_efuse: apc_corner: CPR disable fuse = 0
[ 0.830225] cpr_init_cpr_efuse: apc_corner: Corner[1]: ro_sel = 0, target quot = 631
[ 0.837976] cpr_init_cpr_efuse: apc_corner: Corner[2]: ro_sel = 0, target quot = 631
[ 0.845703] cpr_init_cpr_efuse: apc_corner: Corner[3]: ro_sel = 0, target quot = 899
[ 0.853592] cpr_config: apc_corner: Timer count: 0x17700 (for 5000 us)
[ 0.860426] apc_corner: 0 <--> 0 mV
[ 0.864044] i2c-msm-v2 78b8000.i2c: probing driver i2c-msm-v2
[ 0.869261] i2c-msm-v2 78b8000.i2c: error on clk_get(core_clk):-517
[ 0.875492] i2c-msm-v2 78b8000.i2c: error probe() failed with err:-517
[ 0.882225] i2c-msm-v2 78b7000.i2c: probing driver i2c-msm-v2
[ 0.887775] i2c-msm-v2 78b7000.i2c: error on clk_get(core_clk):-517
[ 0.893941] i2c-msm-v2 78b7000.i2c: error probe() failed with err:-517
[ 0.900719] i2c-msm-v2 78b9000.i2c: probing driver i2c-msm-v2
[ 0.906256] i2c-msm-v2 78b9000.i2c: error on clk_get(core_clk):-517
[ 0.912430] i2c-msm-v2 78b9000.i2c: error probe() failed with err:-517
[ 0.919472] msm-thermal soc:qcom,msm-thermal: msm_thermal:Failed reading node=/soc/qcom,msm-thermal, key=qcom,core-limit-temp. err=-22. KTM continues
[ 0.932372] msm-thermal soc:qcom,msm-thermal: probe_therm_reset:Failed reading node=/soc/qcom,msm-thermal,
key=qcom,therm-reset-temp err=-22. KTM continues
[ 0.946361] msm_thermal:get_kernel_cluster_info CPU0 topology not initialized.
[ 0.953824] cpu cpu0: dev_pm_opp_get_opp_count: device OPP not found (-19)
[ 0.960300] msm_thermal:get_cpu_freq_plan_len Error reading CPU0 freq table len. error:-19
[ 0.968533] msm_thermal:vdd_restriction_reg_init Defer vdd rstr freq init.
[ 0.975846] cpu cpu0: dev_pm_opp_get_opp_count: device OPP not found (-19)
[ 0.982219] msm_thermal:get_cpu_freq_plan_len Error reading CPU0 freq table len. error:-19
[ 0.991378] cpu cpu0: dev_pm_opp_get_opp_count: device OPP not found (-19)
[ 0.997544] msm_thermal:get_cpu_freq_plan_len Error reading CPU0 freq table len. error:-19
[ 1.013642] qcom,gcc-mdm9607 1800000.qcom,gcc: Registered GCC clocks
[ 1.019451] clock-a7 b010008.qcom,clock-a7: Speed bin: 4 PVS Version: 0
[ 1.025693] a7ssmux: set OPP pair(400000000 Hz: 1 uV) on cpu0
[ 1.031314] a7ssmux: set OPP pair(1305600000 Hz: 7 uV) on cpu0
[ 1.038805] i2c-msm-v2 78b8000.i2c: probing driver i2c-msm-v2
[ 1.043587] AXI: msm_bus_scale_register_client(): msm_bus_scale_register_client: Bus driver not ready.
[ 1.052935] i2c-msm-v2 78b8000.i2c: msm_bus_scale_register_client(mstr-id:86):0 (not a problem)
[ 1.062006] irq: no irq domain found for /soc/wcd9xxx-irq !
[ 1.069884] i2c-msm-v2 78b7000.i2c: probing driver i2c-msm-v2
[ 1.074814] AXI: msm_bus_scale_register_client(): msm_bus_scale_register_client: Bus driver not ready.
[ 1.083716] i2c-msm-v2 78b7000.i2c: msm_bus_scale_register_client(mstr-id:86):0 (not a problem)
[ 1.093850] i2c-msm-v2 78b9000.i2c: probing driver i2c-msm-v2
[ 1.098889] AXI: msm_bus_scale_register_client(): msm_bus_scale_register_client: Bus driver not ready.
[ 1.107779] i2c-msm-v2 78b9000.i2c: msm_bus_scale_register_client(mstr-id:86):0 (not a problem)
[ 1.167871] KPI: Bootloader start count = 24097
[ 1.171364] KPI: Bootloader end count = 48481
[ 1.175855] KPI: Bootloader display count = 3884474147
[ 1.180825] KPI: Bootloader load kernel count = 16420
[ 1.185905] KPI: Kernel MPM timestamp = 105728
[ 1.190286] KPI: Kernel MPM Clock frequency = 32768
[ 1.195209] socinfo_print: v0.10, id=297, ver=1.0, raw_id=72, raw_ver=0, hw_plat=8, hw_plat_ver=65536
[ 1.195209] accessory_chip=0, hw_plat_subtype=0, pmic_model=65539, pmic_die_revision=131074 foundry_id=0 serial_number=2120983948
[ 1.216731] sdcard_ext_vreg: no parameters
[ 1.220555] rome_vreg: no parameters
[ 1.224133] emac_lan_vreg: no parameters
[ 1.228177] usbcore: registered new interface driver usbfs
[ 1.233156] usbcore: registered new interface driver hub
[ 1.238578] usbcore: registered new device driver usb
[ 1.244507] cpufreq: driver msm up and running
[ 1.248425] ION heap system created
[ 1.251895] msm_bus_fabric_init_driver
[ 1.262563] qcom,qpnp-power-on qpnp-power-on-c7303800: PMIC@SID0 Power-on reason: Triggered from PON1 (secondary PMIC) and 'cold' boot
[ 1.273747] qcom,qpnp-power-on qpnp-power-on-c7303800: PMIC@SID0: Power-off reason: Triggered from UVLO (Under Voltage Lock Out)
[ 1.285430] input: qpnp_pon as /devices/virtual/input/input0
[ 1.291246] PMIC@SID0: PM8019 v2.2 options: 3, 2, 2, 2
[ 1.296706] Advanced Linux Sound Architecture Driver Initialized.
[ 1.302493] Add group failed
[ 1.305291] cfg80211: Calling CRDA to update world regulatory domain
[ 1.311216] cfg80211: World regulatory domain updated:
[ 1.317109] Switched to clocksource arch_mem_counter
[ 1.334091] cfg80211: DFS Master region: unset
[ 1.337418] cfg80211: (start_freq - end_freq @ bandwidth), (max_antenna_gain, max_eirp), (dfs_cac_time)
[ 1.354087] cfg80211: (2402000 KHz - 2472000 KHz @ 40000 KHz), (N/A, 2000 mBm), (N/A)
[ 1.361055] cfg80211: (2457000 KHz - 2482000 KHz @ 40000 KHz), (N/A, 2000 mBm), (N/A)
[ 1.370545] NET: Registered protocol family 2
[ 1.374082] cfg80211: (2474000 KHz - 2494000 KHz @ 20000 KHz), (N/A, 2000 mBm), (N/A)
[ 1.381851] cfg80211: (5170000 KHz - 5250000 KHz @ 80000 KHz), (N/A, 2000 mBm), (N/A)
[ 1.389876] cfg80211: (5250000 KHz - 5330000 KHz @ 80000 KHz), (N/A, 2000 mBm), (N/A)
[ 1.397857] cfg80211: (5490000 KHz - 5710000 KHz @ 80000 KHz), (N/A, 2000 mBm), (N/A)
[ 1.405841] cfg80211: (5735000 KHz - 5835000 KHz @ 80000 KHz), (N/A, 2000 mBm), (N/A)
[ 1.413795] cfg80211: (57240000 KHz - 63720000 KHz @ 2160000 KHz), (N/A, 0 mBm), (N/A)
[ 1.422355] TCP established hash table entries: 1024 (order: 0, 4096 bytes)
[ 1.428921] TCP bind hash table entries: 1024 (order: 0, 4096 bytes)
[ 1.435192] TCP: Hash tables configured (established 1024 bind 1024)
[ 1.441528] TCP: reno registered
[ 1.444738] UDP hash table entries: 256 (order: 0, 4096 bytes)
[ 1.450521] UDP-Lite hash table entries: 256 (order: 0, 4096 bytes)
[ 1.456950] NET: Registered protocol family 1
[ 1.462779] futex hash table entries: 256 (order: -1, 3072 bytes)
[ 1.474555] msgmni has been set to 115
[ 1.478551] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 251)
[ 1.485041] io scheduler noop registered
[ 1.488818] io scheduler deadline registered
[ 1.493200] io scheduler cfq registered (default)
[ 1.502142] msm_rpm_log_probe: OK
[ 1.506717] msm_serial_hs module loaded
[ 1.509803] msm_serial_hsl_probe: detected port #0 (ttyHSL0)
[ 1.515324] AXI: get_pdata(): Error: Client name not found
[ 1.520626] AXI: msm_bus_cl_get_pdata(): client has to provide missing entry for successful registration
[ 1.530171] msm_serial_hsl_probe: Bus scaling is disabled [ 1.074814] AXI: msm_bus_scale_register_client(): msm_bus_scale_register_client: Bus driver not ready.
[ 1.083716] i2c-msm-v2 78b7000.i2c: msm_bus_scale_register_client(mstr-id:86):0 (not a problem)
[ 1.093850] i2c-msm-v2 78b9000.i2c: probing driver i2c-msm-v2
[ 1.098889] AXI: msm_bus_scale_register_client(): msm_bus_scale_register_client: Bus driver not ready.
[ 1.107779] i2c-msm-v2 78b9000.i2c: msm_bus_scale_register_client(mstr-id:86):0 (not a problem)
[ 1.167871] KPI: Bootloader start count = 24097
[ 1.171364] KPI: Bootloader end count = 48481
[ 1.175855] KPI: Bootloader display count = 3884474147
[ 1.180825] KPI: Bootloader load kernel count = 16420
[ 1.185905] KPI: Kernel MPM timestamp = 105728
[ 1.190286] KPI: Kernel MPM Clock frequency = 32768
[ 1.195209] socinfo_print: v0.10, id=297, ver=1.0, raw_id=72, raw_ver=0, hw_plat=8, hw_plat_ver=65536
[ 1.195209] accessory_chip=0, hw_plat_subtype=0, pmic_model=65539, pmic_die_revision=131074 foundry_id=0 serial_number=2120983948
[ 1.216731] sdcard_ext_vreg: no parameters
[ 1.220555] rome_vreg: no parameters
[ 1.224133] emac_lan_vreg: no parameters
[ 1.228177] usbcore: registered new interface driver usbfs
[ 1.233156] usbcore: registered new interface driver hub
[ 1.238578] usbcore: registered new device driver usb
[ 1.244507] cpufreq: driver msm up and running
[ 1.248425] ION heap system created
[ 1.251895] msm_bus_fabric_init_driver
[ 1.262563] qcom,qpnp-power-on qpnp-power-on-c7303800: PMIC@SID0 Power-on reason: Triggered from PON1 (secondary PMIC) and 'cold' boot
[ 1.273747] qcom,qpnp-power-on qpnp-power-on-c7303800: PMIC@SID0: Power-off reason: Triggered from UVLO (Under Voltage Lock Out)
[ 1.285430] input: qpnp_pon as /devices/virtual/input/input0
[ 1.291246] PMIC@SID0: PM8019 v2.2 options: 3, 2, 2, 2
[ 1.296706] Advanced Linux Sound Architecture Driver Initialized.
[ 1.302493] Add group failed
[ 1.305291] cfg80211: Calling CRDA to update world regulatory domain
[ 1.311216] cfg80211: World regulatory domain updated:
[ 1.317109] Switched to clocksource arch_mem_counter
[ 1.334091] cfg80211: DFS Master region: unset
[ 1.337418] cfg80211: (start_freq - end_freq @ bandwidth), (max_antenna_gain, max_eirp), (dfs_cac_time)
[ 1.354087] cfg80211: (2402000 KHz - 2472000 KHz @ 40000 KHz), (N/A, 2000 mBm), (N/A)
[ 1.361055] cfg80211: (2457000 KHz - 2482000 KHz @ 40000 KHz), (N/A, 2000 mBm), (N/A)
[ 1.370545] NET: Registered protocol family 2
[ 1.374082] cfg80211: (2474000 KHz - 2494000 KHz @ 20000 KHz), (N/A, 2000 mBm), (N/A)
[ 1.381851] cfg80211: (5170000 KHz - 5250000 KHz @ 80000 KHz), (N/A, 2000 mBm), (N/A)
[ 1.389876] cfg80211: (5250000 KHz - 5330000 KHz @ 80000 KHz), (N/A, 2000 mBm), (N/A)
[ 1.397857] cfg80211: (5490000 KHz - 5710000 KHz @ 80000 KHz), (N/A, 2000 mBm), (N/A)
[ 1.405841] cfg80211: (5735000 KHz - 5835000 KHz @ 80000 KHz), (N/A, 2000 mBm), (N/A)
[ 1.413795] cfg80211: (57240000 KHz - 63720000 KHz @ 2160000 KHz), (N/A, 0 mBm), (N/A)
[ 1.422355] TCP established hash table entries: 1024 (order: 0, 4096 bytes)
[ 1.428921] TCP bind hash table entries: 1024 (order: 0, 4096 bytes)
[ 1.435192] TCP: Hash tables configured (established 1024 bind 1024)
[ 1.441528] TCP: reno registered
[ 1.444738] UDP hash table entries: 256 (order: 0, 4096 bytes)
[ 1.450521] UDP-Lite hash table entries: 256 (order: 0, 4096 bytes)
[ 1.456950] NET: Registered protocol family 1
[ 1.462779] futex hash table entries: 256 (order: -1, 3072 bytes)
[ 1.474555] msgmni has been set to 115
[ 1.478551] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 251)
[ 1.485041] io scheduler noop registered
[ 1.488818] io scheduler deadline registered
[ 1.493200] io scheduler cfq registered (default)
[ 1.502142] msm_rpm_log_probe: OK
[ 1.506717] msm_serial_hs module loaded
[ 1.509803] msm_serial_hsl_probe: detected port #0 (ttyHSL0)
[ 1.515324] AXI: get_pdata(): Error: Client name not found
[ 1.520626] AXI: msm_bus_cl_get_pdata(): client has to provide missing entry for successful registration
[ 1.530171] msm_serial_hsl_probe: Bus scaling is disabled
[ 1.535696] 78b3000.serial: ttyHSL0 at MMIO 0x78b3000 (irq = 153, base_baud = 460800 [ 1.544155] msm_hsl_console_setup: console setup on port #0
[ 1.548727] console [ttyHSL0] enabled
[ 1.548727] console [ttyHSL0] enabled
[ 1.556014] bootconsole [uart0] disabled
[ 1.556014] bootconsole [uart0] disabled
[ 1.564212] msm_serial_hsl_init: driver initialized
[ 1.578450] brd: module loaded
[ 1.582920] loop: module loaded
[ 1.589183] sps: BAM device 0x07984000 is not registered yet.
[ 1.594234] sps:BAM 0x07984000 is registered.
[ 1.598072] msm_nand_bam_init: msm_nand_bam_init: BAM device registered: bam_handle 0xc69f6400
[ 1.607103] sps:BAM 0x07984000 (va:0xc89a0000) enabled: ver:0x18, number of pipes:7
[ 1.616588] msm_nand_parse_smem_ptable: Parsing partition table info from SMEM
[ 1.622805] msm_nand_parse_smem_ptable: SMEM partition table found: ver: 4 len: 17
[ 1.630391] msm_nand_version_check: nand_major:1, nand_minor:5, qpic_major:1, qpic_minor:5
[ 1.638642] msm_nand_scan: NAND Id: 0x1590aa98 Buswidth: 8Bits Density: 256 MByte
[ 1.646069] msm_nand_scan: pagesize: 2048 Erasesize: 131072 oobsize: 128 (in Bytes)
[ 1.653676] msm_nand_scan: BCH ECC: 8 Bit
[ 1.657710] msm_nand_scan: CFG0: 0x290408c0, CFG1: 0x0804715c
[ 1.657710] RAWCFG0: 0x2b8400c0, RAWCFG1: 0x0005055d
[ 1.657710] ECCBUFCFG: 0x00000203, ECCBCHCFG: 0x42040d10
[ 1.657710] RAWECCCFG: 0x42000d11, BAD BLOCK BYTE: 0x000001c5
[ 1.684101] Creating 17 MTD partitions on "7980000.nand":
[ 1.689447] 0x000000000000-0x000000140000 : "sbl"
[ 1.694867] 0x000000140000-0x000000280000 : "mibib"
[ 1.699560] 0x000000280000-0x000000e80000 : "efs2"
[ 1.704408] 0x000000e80000-0x000000f40000 : "tz"
[ 1.708934] 0x000000f40000-0x000000fa0000 : "rpm"
[ 1.713625] 0x000000fa0000-0x000001000000 : "aboot"
[ 1.718582] 0x000001000000-0x0000017e0000 : "boot"
[ 1.723281] 0x0000017e0000-0x000002820000 : "scrub"
[ 1.728174] 0x000002820000-0x000005020000 : "modem"
[ 1.732968] 0x000005020000-0x000005420000 : "rfbackup"
[ 1.738156] 0x000005420000-0x000005820000 : "oem"
[ 1.742770] 0x000005820000-0x000005f00000 : "recovery"
[ 1.747972] 0x000005f00000-0x000009100000 : "cache"
[ 1.752787] 0x000009100000-0x000009a40000 : "recoveryfs"
[ 1.758389] 0x000009a40000-0x00000aa40000 : "cdrom"
[ 1.762967] 0x00000aa40000-0x00000ba40000 : "jrdresource"
[ 1.768407] 0x00000ba40000-0x000010000000 : "system"
[ 1.773239] msm_nand_probe: NANDc phys addr 0x7980000, BAM phys addr 0x7984000, BAM IRQ 164
[ 1.781074] msm_nand_probe: Allocated DMA buffer at virt_addr 0xc7840000, phys_addr 0x87840000
[ 1.791872] PPP generic driver version 2.4.2
[ 1.801126] cnss_sdio 87a00000.qcom,cnss-sdio: CNSS SDIO Driver registered
[ 1.807554] msm_otg 78d9000.usb: msm_otg probe
[ 1.813333] msm_otg 78d9000.usb: OTG regs = c88f8000
[ 1.820702] gbridge_init: gbridge_init successs.
[ 1.826344] msm_otg 78d9000.usb: phy_reset: success
[ 1.830294] qcom,qpnp-rtc qpnp-rtc-c7307000: rtc core: registered qpnp_rtc as rtc0
[ 1.838474] i2c /dev entries driver
[ 1.842459] unable to find DT imem DLOAD mode node
[ 1.846588] unable to find DT imem EDLOAD mode node
[ 1.851332] unable to find DT imem dload-type node
[ 1.856921] bq24295-charger 4-006b: bq24295 probe enter
[ 1.861161] qcom,iterm-ma = 128
[ 1.864476] bq24295_otg_vreg: no parameters
[ 1.868502] charger_core_register: Charger Core Version 5.0.0(Built at 20151202-21:36)!
[ 1.877007] i2c-msm-v2 78b8000.i2c: msm_bus_scale_register_client(mstr-id:86):0x3 (ok)
[ 1.885559] bq24295-charger 4-006b: bq24295_set_bhot_mode 3
[ 1.890150] bq24295-charger 4-006b: power_good is 1,vbus_stat is 2
[ 1.896588] bq24295-charger 4-006b: bq24295_set_thermal_threshold 100
[ 1.902952] bq24295-charger 4-006b: bq24295_set_sys_min 3700
[ 1.908639] bq24295-charger 4-006b: bq24295_set_max_target_voltage 4150
[ 1.915223] bq24295-charger 4-006b: bq24295_set_recharge_threshold 300
[ 1.922119] bq24295-charger 4-006b: bq24295_set_terminal_current_limit iterm_disabled=0, iterm_ma=128
[ 1.930917] bq24295-charger 4-006b: bq24295_set_precharge_current_limit bdi->prech_cur=128
[ 1.940038] bq24295-charger 4-006b: bq24295_set_safty_timer 0
[ 1.945088] bq24295-charger 4-006b: bq24295_set_input_voltage_limit 4520
[ 1.972949] sdhci: Secure Digital Host Controller Interface driver
[ 1.978151] sdhci: Copyright(c) Pierre Ossman
[ 1.982441] sdhci-pltfm: SDHCI platform and OF driver helper
[ 1.989092] sdhci_msm 7824900.sdhci: sdhci_msm_probe: ICE device is not enabled
[ 1.995473] sdhci_msm 7824900.sdhci: No vreg data found for vdd
[ 2.001530] sdhci_msm 7824900.sdhci: sdhci_msm_pm_qos_parse_irq: error -22 reading irq cpu
[ 2.009809] sdhci_msm 7824900.sdhci: sdhci_msm_pm_qos_parse: PM QoS voting for IRQ will be disabled
[ 2.018600] sdhci_msm 7824900.sdhci: sdhci_msm_pm_qos_parse: PM QoS voting for cpu group will be disabled
[ 2.030541] sdhci_msm 7824900.sdhci: sdhci_msm_probe: sdiowakeup_irq = 353
[ 2.036867] sdhci_msm 7824900.sdhci: No vmmc regulator found
[ 2.042027] sdhci_msm 7824900.sdhci: No vqmmc regulator found
[ 2.048266] mmc0: SDHCI controller on 7824900.sdhci [7824900.sdhci] using 32-bit ADMA in legacy mode
[ 2.080401] Welcome to pca955x_probe!!
[ 2.084362] leds-pca955x 3-0020: leds-pca955x: Using pca9555 16-bit LED driver at slave address 0x20
[ 2.095400] sdhci_msm 7824900.sdhci: card claims to support voltages below defined range
[ 2.103125] i2c-msm-v2 78b7000.i2c: msm_bus_scale_register_client(mstr-id:86):0x5 (ok)
[ 2.114183] msm_otg 78d9000.usb: Avail curr from USB = 1500
[ 2.120251] come to USB_SDP_CHARGER!
[ 2.123215] Welcome to sn3199_probe!
[ 2.126718] leds-sn3199 5-0064: leds-sn3199: Using sn3199 9-bit LED driver at slave address 0x64
[ 2.136511] sn3199->led_en_gpio=21
[ 2.139143] i2c-msm-v2 78b9000.i2c: msm_bus_scale_register_client(mstr-id:86):0x6 (ok)
[ 2.150207] usbcore: registered new interface driver usbhid
[ 2.154864] usbhid: USB HID core driver
[ 2.159825] sps:BAM 0x078c4000 is registered.
[ 2.163573] bimc-bwmon 408000.qcom,cpu-bwmon: BW HWmon governor registered.
[ 2.171080] devfreq soc:qcom,cpubw: Couldn't update frequency transition information.
[ 2.178513] coresight-fuse a601c.fuse: QPDI fuse not specified
[ 2.184242] coresight-fuse a601c.fuse: Fuse initialized
[ 2.192407] coresight-csr 6001000.csr: CSR initialized
[ 2.197263] coresight-tmc 6026000.tmc: Byte Counter feature enabled
[ 2.203204] sps:BAM 0x06084000 is registered.
[ 2.207301] coresight-tmc 6026000.tmc: TMC initialized
[ 2.212681] coresight-tmc 6025000.tmc: TMC initialized
[ 2.220071] nidnt boot config: 0
[ 2.224563] mmc0: new ultra high speed SDR50 SDIO card at address 0001
[ 2.231120] coresight-tpiu 6020000.tpiu: NIDnT on SDCARD only mode
[ 2.236440] coresight-tpiu 6020000.tpiu: TPIU initialized
[ 2.242808] coresight-replicator 6024000.replicator: REPLICATOR initialized
[ 2.249372] coresight-stm 6002000.stm: STM initialized
[ 2.255034] coresight-hwevent 606c000.hwevent: Hardware Event driver initialized
[ 2.262312] Netfilter messages via NETLINK v0.30.
[ 2.266306] nf_conntrack version 0.5.0 (920 buckets, 3680 max)
[ 2.272312] ctnetlink v0.93: registering with nfnetlink.
[ 2.277565] ip_set: protocol 6
[ 2.280568] ip_tables: (C) 2000-2006 Netfilter Core Team
[ 2.285723] arp_tables: (C) 2002 David S. Miller
[ 2.290146] TCP: cubic registered
[ 2.293915] NET: Registered protocol family 10
[ 2.298740] ip6_tables: (C) 2000-2006 Netfilter Core Team
[ 2.303407] sit: IPv6 over IPv4 tunneling driver
[ 2.308481] NET: Registered protocol family 17
[ 2.312340] bridge: automatic filtering via arp/ip/ip6tables has been deprecated. Update your scripts to load br_netfilter if you need this.
[ 2.325094] Bridge firewalling registered
[ 2.328930] Ebtables v2.0 registered
[ 2.333260] NET: Registered protocol family 27
[ 2.341362] battery_core_register: Battery Core Version 5.0.0(Built at 20151202-21:36)!
[ 2.348466] pmu_battery_probe: vbat_channel=21, tbat_channel=17
[ 2.420236] ubi0: attaching mtd16
[ 2.723941] ubi0: scanning is finished
[ 2.732997] ubi0: attached mtd16 (name "system", size 69 MiB)
[ 2.737783] ubi0: PEB size: 131072 bytes (128 KiB), LEB size: 126976 bytes
[ 2.744601] ubi0: min./max. I/O unit sizes: 2048/2048, sub-page size 2048
[ 2.751333] ubi0: VID header offset: 2048 (aligned 2048), data offset: 4096
[ 2.758540] ubi0: good PEBs: 556, bad PEBs: 2, corrupted PEBs: 0
[ 2.764305] ubi0: user volume: 3, internal volumes: 1, max. volumes count: 128
[ 2.771476] ubi0: max/mean erase counter: 192/64, WL threshold: 4096, image sequence number: 35657280
[ 2.780708] ubi0: available PEBs: 0, total reserved PEBs: 556, PEBs reserved for bad PEB handling: 38
[ 2.789921] ubi0: background thread "ubi_bgt0d" started, PID 96
[ 2.796395] android_bind cdev: 0xC6583E80, name: ci13xxx_msm
[ 2.801508] file system registered
[ 2.804974] mbim_init: initialize 1 instances
[ 2.809228] mbim_init: Initialized 1 ports
[ 2.815074] rndis_qc_init: initialize rndis QC instance
[ 2.819713] jrd device_desc.bcdDevice: [0x0242]
[ 2.823779] android_bind scheduled usb start work: name: ci13xxx_msm
[ 2.830230] android_usb gadget: android_usb ready
[ 2.834845] msm_hsusb msm_hsusb: [ci13xxx_start] hw_ep_max = 32
[ 2.840741] msm_hsusb msm_hsusb: CI13XXX_CONTROLLER_RESET_EVENT received
[ 2.847433] msm_hsusb msm_hsusb: CI13XXX_CONTROLLER_UDC_STARTED_EVENT received
[ 2.855851] input: gpio-keys as /devices/soc:gpio_keys/input/input1
[ 2.861452] qcom,qpnp-rtc qpnp-rtc-c7307000: setting system clock to 1970-01-01 06:36:41 UTC (23801)
[ 2.870315] open file error /usb_conf/usb_config.ini
[ 2.876412] jrd_usb_start_work open file erro /usb_conf/usb_config.ini, retry_count:0
[ 2.884324] parse_legacy_cluster_params(): Ignoring cluster params
[ 2.889468] ------------[ cut here ]------------
[ 2.894186] WARNING: CPU: 0 PID: 1 at /home/linux3/jrd/yanping.an/ee40/0810/MDM9607.LE.1.0-00130/apps_proc/oe-core/build/tmp-glibc/work-shared/mdm9607/kernel-source/drivers/cpuidle/lpm-levels-of.c:739 parse_cluster+0xb50/0xcb4()
[ 2.914366] Modules linked in:
[ 2.917339] CPU: 0 PID: 1 Comm: swapper Not tainted 3.18.20 #1
[ 2.923171] [<c00132ac>] (unwind_backtrace) from [<c0011460>] (show_stack+0x10/0x14)
[ 2.931092] [<c0011460>] (show_stack) from [<c001c6ac>] (warn_slowpath_common+0x68/0x88)
[ 2.939175] [<c001c6ac>] (warn_slowpath_common) from [<c001c75c>] (warn_slowpath_null+0x18/0x20)
[ 2.947895] [<c001c75c>] (warn_slowpath_null) from [<c034e180>] (parse_cluster+0xb50/0xcb4)
[ 2.956189] [<c034e180>] (parse_cluster) from [<c034b6b4>] (lpm_probe+0xc/0x1d4)
[ 2.963527] [<c034b6b4>] (lpm_probe) from [<c024857c>] (platform_drv_probe+0x30/0x7c)
[ 2.971380] [<c024857c>] (platform_drv_probe) from [<c0246d54>] (driver_probe_device+0xb8/0x1e8)
[ 2.980118] [<c0246d54>] (driver_probe_device) from [<c0246f30>] (__driver_attach+0x68/0x8c)
[ 2.988467] [<c0246f30>] (__driver_attach) from [<c02455d0>] (bus_for_each_dev+0x6c/0x90)
[ 2.996626] [<c02455d0>] (bus_for_each_dev) from [<c02465a4>] (bus_add_driver+0xe0/0x1c8)
[ 3.004786] [<c02465a4>] (bus_add_driver) from [<c02477bc>] (driver_register+0x9c/0xe0)
[ 3.012739] [<c02477bc>] (driver_register) from [<c080c3d8>] (lpm_levels_module_init+0x14/0x38)
[ 3.021459] [<c080c3d8>] (lpm_levels_module_init) from [<c0008980>] (do_one_initcall+0xf8/0x1a0)
[ 3.030217] [<c0008980>] (do_one_initcall) from [<c07e7d4c>] (kernel_init_freeable+0xf0/0x1b0)
[ 3.038818] [<c07e7d4c>] (kernel_init_freeable) from [<c0582d48>] (kernel_init+0x8/0xe4)
[ 3.046888] [<c0582d48>] (kernel_init) from [<c000dda0>] (ret_from_fork+0x14/0x34)
[ 3.054432] ---[ end trace e9ec50b1ec4c8f73 ]---
[ 3.059012] ------------[ cut here ]------------
[ 3.063604] WARNING: CPU: 0 PID: 1 at /home/linux3/jrd/yanping.an/ee40/0810/MDM9607.LE.1.0-00130/apps_proc/oe-core/build/tmp-glibc/work-shared/mdm9607/kernel-source/drivers/cpuidle/lpm-levels-of.c:739 parse_cluster+0xb50/0xcb4()
[ 3.083858] Modules linked in:
[ 3.086870] CPU: 0 PID: 1 Comm: swapper Tainted: G W 3.18.20 #1
[ 3.093814] [<c00132ac>] (unwind_backtrace) from [<c0011460>] (show_stack+0x10/0x14)
[ 3.101575] [<c0011460>] (show_stack) from [<c001c6ac>] (warn_slowpath_common+0x68/0x88)
[ 3.109641] [<c001c6ac>] (warn_slowpath_common) from [<c001c75c>] (warn_slowpath_null+0x18/0x20)
[ 3.118412] [<c001c75c>] (warn_slowpath_null) from [<c034e180>] (parse_cluster+0xb50/0xcb4)
[ 3.126745] [<c034e180>] (parse_cluster) from [<c034b6b4>] (lpm_probe+0xc/0x1d4)
[ 3.134126] [<c034b6b4>] (lpm_probe) from [<c024857c>] (platform_drv_probe+0x30/0x7c)
[ 3.141906] [<c024857c>] (platform_drv_probe) from [<c0246d54>] (driver_probe_device+0xb8/0x1e8)
[ 3.150702] [<c0246d54>] (driver_probe_device) from [<c0246f30>] (__driver_attach+0x68/0x8c)
[ 3.159120] [<c0246f30>] (__driver_attach) from [<c02455d0>] (bus_for_each_dev+0x6c/0x90)
[ 3.167285] [<c02455d0>] (bus_for_each_dev) from [<c02465a4>] (bus_add_driver+0xe0/0x1c8)
[ 3.175444] [<c02465a4>] (bus_add_driver) from [<c02477bc>] (driver_register+0x9c/0xe0)
[ 3.183398] [<c02477bc>] (driver_register) from [<c080c3d8>] (lpm_levels_module_init+0x14/0x38)
[ 3.192107] [<c080c3d8>] (lpm_levels_module_init) from [<c0008980>] (do_one_initcall+0xf8/0x1a0)
[ 3.200877] [<c0008980>] (do_one_initcall) from [<c07e7d4c>] (kernel_init_freeable+0xf0/0x1b0)
[ 3.209475] [<c07e7d4c>] (kernel_init_freeable) from [<c0582d48>] (kernel_init+0x8/0xe4)
[ 3.217542] [<c0582d48>] (kernel_init) from [<c000dda0>] (ret_from_fork+0x14/0x34)
[ 3.225090] ---[ end trace e9ec50b1ec4c8f74 ]---
[ 3.229667] /soc/qcom,lpm-levels/qcom,pm-cluster@0: No CPU phandle, assuming single cluster
[ 3.239954] qcom,cc-debug-mdm9607 1800000.qcom,debug: Registered Debug Mux successfully
[ 3.247619] emac_lan_vreg: disabling
[ 3.250507] mem_acc_corner: disabling
[ 3.254196] clock_late_init: Removing enables held for handed-off clocks
[ 3.262690] ALSA device list:
[ 3.264732] No soundcard [ 3.274083] UBIFS (ubi0:0): background thread "ubifs_bgt0_0" started, PID 102
[ 3.305224] UBIFS (ubi0:0): recovery needed
[ 3.466156] UBIFS (ubi0:0): recovery completed
[ 3.469627] UBIFS (ubi0:0): UBIFS: mounted UBI device 0, volume 0, name "rootfs"
[ 3.476987] UBIFS (ubi0:0): LEB size: 126976 bytes (124 KiB), min./max. I/O unit sizes: 2048 bytes/2048 bytes
[ 3.486876] UBIFS (ubi0:0): FS size: 45838336 bytes (43 MiB, 361 LEBs), journal size 9023488 bytes (8 MiB, 72 LEBs)
[ 3.497417] UBIFS (ubi0:0): reserved for root: 0 bytes (0 KiB)
[ 3.503078] UBIFS (ubi0:0): media format: w4/r0 (latest is w4/r0), UUID 4DBB2F12-34EB-43B6-839B-3BA930765BAE, small LPT model
[ 3.515582] VFS: Mounted root (ubifs filesystem) on device 0:12.
[ 3.520940] Freeing unused kernel memory: 276K (c07e7000 - c082c000)
INIT: version 2.88 booting
The 5 Adopted Pups who now have a permanent loving family!
UP FOR ADOPTION Delhi/NCR
Meet Momo and Beesa,
2 out of the 7 pups, who are still waiting for a forever home, currently living with a loving foster family.
Vaccinations, Deworming is done.
Female pups, 6 months old.
backupsvr: id: .... exchpub: ... signpub: ... noisepub: ... via: ["spooler"]This tells NNCP that data destined for backupsvr should always be sent via spooler first. You can then arrange for the nncp-daemon to run on the spooler, and nncp-caller or nncp-call on the backupsvr. Or, alternatively, airgapped between the two with nncp-xfer. Generating Backup Data Now, on the laptop, install simplesnap (2.0.0 or above). Although you won t be backing up to the local system, simplesnap still maintains a hostlock in ZFS. Prepate a dataset for it:
zfs create tank/simplesnap zfs set org.complete.simplesnap:exclude=on tank/simplesnapThen, create a script /usr/local/bin/runsimplesnap like this:
#!/bin/bash set -e simplesnap --store tank/simplesnap --setname backups --local --host hostname \ --receivecmd /usr/local/bin/simplesnap-queue \ --noreap su nncp -c '/usr/local/nncp/bin/nncp-toss -noprogress -quiet' if ip addr grep -q 192.168.65.64; then su nncp -c '/usr/local/nncp/bin/nncp-call -noprogress -quiet -onlinedeadline 1 spooler' fiThe call to simplesnap sets it up to send the data to simplesnap-queue, which we ll create in a moment. The receivmd, plus noreap, sets it up to run without ZFS on the local system. The call to nncp-toss will process any previously-received inbound NNCP packets, if there are any. Then, in this example, we do a very basic check to see if we re on the LAN (checking 192.168.65.64), and if so, will establish a connection to the spooler to transmit the data. If course, you could also do this over the Internet, with tor, or whatever, but in my case, I don t want to automatically do this in case I m tethered to mobile. I figure if I want to send backups in that case, I can fire up nncp-call myself. You can also use nncp-caller to set up automated connections on other schedules; there are a lot of options. Now, here s what /usr/local/bin/simplesnap-queue looks like:
#!/bin/bash set -e set -o pipefail DEST=" echo $1 sed 's,^tank/simplesnap/,,' " echo "Processing $DEST" >&2 # stdin piped to this su nncp -c "/usr/local/nncp/bin/nncp-exec -nice B -noprogress backupsvr zfsreceive '$DEST'" >&2 echo "Queued for $DEST" >&2This is a pretty simple script. simplesnap will call it with a path based on the store, with the hostname after; so, for instance, tank/simplesnap/laptop/root or some such. This script strips off the leading tank/simplesnap (which is a local fragment), leaving the host and dataset paths. Then it just pipes it to nncp-exec. -nice B classifies it as low-priority bulk data (so if you have some more important interactive data, it would be sent first), then passes it to whatever the backupsvr defines as zfsreceive. Receiving ZFS backups In the NNCP configuration on the recipient s side, in the laptop section, we define what command it s allowed to run as zfsreceive:
exec: zfsreceive: ["/usr/bin/sudo", "-H", "/usr/local/bin/nncp-zfs-receive"]We authorize the nncp user to run this under sudo in /etc/sudoers.d/local nncp:
Defaults env_keep += "NNCP_SENDER" nncp ALL=(root) NOPASSWD: /usr/local/bin/nncp-zfs-receiveThe NNCP_SENDER is the public key ID of the sending node when nncp-toss processes the incoming data. We can use that for sanity checking later. Now, here s a basic nncp-zfs-receive script:
#!/bin/bash set -e set -o pipefail STORE=backups/simplesnap DEST="$1" # now process stdin runcommand zfs receive -o readonly=on -x mountpoint "$STORE/$DEST"And there you have it all the basics are in place. Update 2020-12-30: An earlier version of this article had zfs receive -F instead of zfs receive -o readonly=on -x mountpoint . These changed arguments are more robust.
#!/bin/bash set -e set -o pipefail STORE=backups/simplesnap # $1 will be the host/dataset DEST="$1" HOST=" echo "$1" sed 's,/.*,,g' " if [ -z "$HOST" ]; then echo "Malformed command line" exit 5 fi # Log a message logit () logger -p info -t " basename "$0" [$$]" "$1" # Log an error message logerror () logger -p err -t " basename "$0" [$$]" "$1" # Log stdin with the given code. Used normally to log stderr. logstdin () logger -p info -t " basename "$0" [$$/$1]" # Run command, logging stderr and exit code runcommand () logit "Running $*" if "$@" 2> >(logstdin "$1") ; then logit "$1 exited successfully" return 0 else RETVAL="$?" logerror "$1 exited with error $RETVAL" return "$RETVAL" fi exiterror () logerror "$1" echo "$1" 1>&2 exit 10 # Sanity check if [ "$HOST" = "laptop" ]; then if [ "$NNCP_SENDER" != "12345678" ]; then exiterror "Host $HOST doesn't match sender $NNCP_SENDER" fi else exiterror "Unknown host $HOST" fi runcommand zfs receive -F "$STORE/$DEST"Now you ll capture the ZFS receive output in syslog in a friendly way, so you can look back later why things failed if they did. Further notes on NNCP nncp-toss will examine the exit code from an invocation. If it is nonzero, it will keep the command (and associated stdin) in the queue and retry it on the next invocation. NNCP does not guarantee order of execution, so it is possible in some cases that ZFS streams may be received in the wrong order. That is fine here; zfs receive will exit with an error, and nncp-toss will just run it again after the dependent snapshots have been received. For non-ZFS backups, a simple sequence number can handle this issue.
Publisher: | Riverhead Books |
Copyright: | 2019 |
ISBN: | 0-7352-1095-0 |
Format: | Kindle |
Pages: | 276 |
github.com/google/codesearch
.
If you are curious about its inner workings, check out my TurboPFor: an
analysis .
Applied on the Debian Code Search index, TurboPFor indeed compresses integers better:
dcs replay
benchmark, which is more pronounced the more
i/o is required.
type docid uint32
type index map[trigram][]docid
to:
type occurrence struct
doc docid
pos uint32 // byte offset in doc
type index map[trigram][]occurrence
The resulting index consumes more disk space, but can be queried faster:
(doc,pos)
tuple on disk, but to store positions, accompanied by a stream of doc/pos
relationship bits: 1 means this position belongs to the next document, 0 means
this position belongs to the current document.
This is an easy way of saving some space without modifying the TurboPFor
on-disk format: the posrel technique reduces the index size to about .
With the increase in size, the Linux page cache hit ratio will be lower for
the positional index, i.e. more data will need to be fetched from disk for
querying the index.
As long as the disk can deliver data as fast as you can decompress posting
lists, this only translates into one disk seek s worth of additional
latency. This is the case with modern NVMe disks that deliver thousands of MB/s,
e.g. the Samsung 960 Pro (used in Hetzner s aforementioned EX61-NVME server).
The values were measured by running dcs du -h /srv/dcs/shard*/full
without and with the -pos
argument.
iostat -d 25
just before running
bench.zsh
on an otherwise idle system.
== On-premise == == Online ==
Camera 1 Jitsi
v ---> Frontend v ---> Frontend
Slides -> Voctomix -> Backend -+--> Frontend Questions -> Voctomix -> Backend -+--> Frontend
^ ---> Frontend ^ ---> Frontend
Camera 2 Pre-recorded video
HLS | RTMP | |
---|---|---|
Pros |
|
|
Cons |
|
|
live.debconf.org
and redirect connections to the nearest server.
Sadly, 6 months ago MaxMind decided to change the licence on their
GeoLite2 database and left us scrambling. To fix this annoying issue, Stefano
Rivera wrote a Python program that uses the new database and reworked our
ansible frontend server role. Since the new database cannot be
redistributed freely, you'll have to get a (free) license key from MaxMind if
you to use this role.
Ansible & CI improvements
Infrastructure as code is a living process and needs constant care to fix bugs,
follow changes in DSL and to implement new features. All that to say a large
part of the sprint was spent making our ansible roles and continuous
integration setup more reliable, less buggy and more featureful.
All in all, we merged 26 separate ansible-related merge request during the
sprint! As always, if you are good with ansible and wish to help, we accept
merge requests on our ansible repository :)
tracks sessions using a hash of the browser's user agent and IP address to identify the client without storing any personal information. The salt used to generate these hashes is rotated every 4 hours with a sliding window.There was no Debian package for the project, so I filed a request for package and instead made a fork of the project to add a Docker image. This page documents how Goatcounter was setup from there...
docker build -t zgoat/goatcounter .
docker volume create goatcounter
exec docker run --restart=unless-stopped --volume="goatcounter:/home/user/db/" --publish 127.0.0.1:8081:8080 --detach zgoat/goatcounter serve -listen :8080 -tls none
<VirtualHost *:80>
ServerName analytics.anarc.at
Redirect / https://analytics.anarc.at/
DocumentRoot /var/www/html/
</VirtualHost>
<VirtualHost *:443>
ServerName analytics.anarc.at
Use common-letsencrypt-ssl analytics.anarc.at
DocumentRoot /var/www/html/
ProxyPass /.well-known/ !
ProxyPass / http://localhost:8081/
ProxyPassReverse / http://localhost:8081/
ProxyPreserveHost on
</VirtualHost>
analytics.anarc.at
to DNScertbot certonly --webroot -d analytics.anarc.at --webroot-path /var/www/html/
note that goatcounter has code to do this on its own, but we avoid
it to follow our existing policies and simplify thingsdocker run -it --rm --volume="goatcounter:/home/user/db/" zgoat/goatcounter create -domain analytics.anarc.at -email anarcat+rapports@anarc.at
ikiwiki --setup ikiwiki.setup --rebuild --verbose
FROM scratch
, this is statically built
golang stuff after all...noscript
usersgoatcounter monitor
doesn't with sqlite (fixed upstream!)-port 8080
which
was not necessary.int
__dtoa_engine(double x, struct dtoa *dtoa, uint8_t max_digits, uint8_t max_decimals);
This converts the double x
to a string of decimal digits and a
decimal exponent stored inside the 'dtoa' struct. It limits the
total number of digits to max_digits
and, optionally (when
max_decimals is non-zero), limits the number of fractional digits
to max_decimals - 1
. This latter supports 'f' formats. Returns
the number of digits stored, which is <= max_digits. Less if the
number can be accurately represented in fewer digits.int
__ftoa_engine(float x, struct ftoa *ftoa, uint8_t max_digits, uint8_t max_decimals);
The same as __dtoa_engine
, except for floats.double
__atod_engine(uint64_t m10, int e10);
To avoid needing to handle stdio inside the conversion function,
__atod_engine
receives fully parsed values, the base-10
significand (m10
) and exponent (e10
). The value to convert is
m10 * pow(10, e10)
.float
__atof_engine(uint32_t m10, int e10);
The same as __atod_engine
, except for floats.max_digits
or max_decimals
were smaller. I'm not sure I managed to do that correctly, but at
least it appears to be passing all of the test cases I have. In normal
operation, Ry iteratively removes digits from the answer that aren't
necessary to disambiguate with neighboring values.
What I changed was to keep removing digits using that method until the
answer had few enough digits to fit in the desired length. There's
some tricky rounding code that adjusts the final result and I had to
bypass that if I'd removed extra digits.
That was about the only change necessary to the core algorithm. I also
trimmed the code to only include the general case and not the
performance improvements, then wrapped it with code to provide the
_engine interface.
On the string-to-float side, most of what I needed to do was remove
the string parsing bits at the start of the function and switch from
performance-optimized to space-optimized versions of a couple of
internal routines.
Correctness Results
Because these new functions are now 'exact', I was able to adjust the
picolibc tests to compare all of the bits for string/float conversion
instead of having to permit a bit of slop in the answers. With those
changes, the picolibc test suite passes, which offers some assurance
that things aren't completely broken.
Size Results
Snek uses the 32-bit float versions of the conversion routines, and
for that, the size difference is:
text data bss dec hex filename
59068 44 37968 97080 17b38 snek-qemu-riscv-orig.elf
59430 44 37968 97442 17ca2 snek-qemu-riscv-ryu.elf
362
362 bytes added to gain accurate printf/strtof results seems like a
good trade-off in this case.
Performance
I haven't measured performance at all, but I suspect that it won't be
nearly as problematic on most platforms as the source code makes it
appear. And that's because Ry is entirely integer arithmetic with no
floating point at all. This avoids using the soft fp code for
platforms without hardware float support.
Pointers to the Code
I haven't merged this to picolibc master yet, it's on the ryu branch:
Review, especially of the hack above to return short results, would be
greatly appreciated!
Thanks again to Ulf Adams for creating this code and to Sreepathi Pai
for sending me a note about it!
mark-even-if-inactive
to true by default in Emacs 23.1.
It s not always clear which objections to turning on Transient Mark
mode by default take into account the mark-even-if-inactive
change.
I think that turning on Transient Mark mode along with
mark-even-if-inactive
is a good default. The question that remains
is whether the disadvantages of Transient Mark mode are significant
enough that experienced Emacs users should consider altering Emacs
default behaviour to mitigate them. Here s one popular blog arguing
for some
mitigations.
How might Transient Mark mode be disadvantageous?
The suggestion is that it makes using the mark for navigation rather
than for acting on regions less convenient:
C-SPC C-SPC
, rather than just one keypressexchange-point-and-mark
activates the region, so to use it
for navigation you need to use either C-u C-x C-x
or C-x C-x
C-g
, neither of which are convenient to type, or else it will be
difficult to set regions at the place you ve just jumped to because
you ll already have one active.exchange-point-and-mark
, and it s
subsumed by the problem of that command actually activating the
region. The rest of the time Emacs automatic deactivation of the
region seems sufficient.
How might disabling Transient Mark mode be disadvantageous?
When Transient Mark mode is on, many commands will do something
usefully different when the mark is active. The number of commands in
Emacs which work this way is only going to increase now that Transient
Mark mode is the default.
If you disable Transient Mark mode, then to use those features you
need to temporarily activate Transient Mark mode. This can be fiddly
and/or require a lot of keypresses, depending on exactly where you
want to put the region.
Without being able to see the region, it might be harder to know where
it is. Indeed, this is one of the main reasons for wanting Transient
Mark mode to be the default, to avoid confusing new users. I don t
think this is likely to affect experienced Emacs users often, however,
and on occasions when more precision is really needed, C-u C-x C-x
will make the region visible. So I m not counting this as a
disadvantage.
How might we mitigate these two sets of disadvantages?
Here are the two middle grounds I m considering.
Mitigation #1: Transient Mark mode, but hack C-x C-x
behaviour
(defun spw/exchange-point-and-mark (arg)
"Exchange point and mark, but reactivate mark a bit less often.
Specifically, invert the meaning of ARG in the case where
Transient Mark mode is on but the region is inactive."
(interactive "P")
(exchange-point-and-mark
(if (and transient-mark-mode (not mark-active))
(not arg)
arg)))
(global-set-key [remap exchange-point-and-mark] &aposspw/exchange-point-and-mark)
C-x
C-x
reactivate the mark and require C-u C-x C-x
to use the action
of exchanging point and mark as a means of navigation. There needs to
a binding to reactivate the mark, but in roughly ten years of having
Transient Mark mode turned on, I ve found that the need to reactivate
the mark doesn t come up often, so the shorter and longer bindings
seem the wrong way around. Not sure what I m missing here.
Mitigation #2: disable Transient Mark mode, but enable it temporarily more often
(setq transient-mark-mode nil)
(defun spw/remap-mark-command (command &optional map)
"Remap a mark-* command to temporarily activate Transient Mark mode."
(let* ((cmd (symbol-name command))
(fun (intern (concat "spw/" cmd)))
(doc (concat "Call "
cmd
"&apos and temporarily activate Transient Mark mode.")))
(fset fun (lambda ()
,doc
(interactive)
(call-interactively #&apos,command)
(activate-mark)))
(if map
(define-key map (vector &aposremap command) fun)
(global-set-key (vector &aposremap command) fun))))
(dolist (command &apos(mark-word
mark-sexp
mark-paragraph
mark-defun
mark-page
mark-whole-buffer))
(spw/remap-mark-command command))
(with-eval-after-load &aposorg
(spw/remap-mark-command &aposorg-mark-element org-mode-map)
(spw/remap-mark-command &aposorg-mark-subtree org-mode-map))
;; optional
(global-set-key "\M-=" (lambda () (interactive) (activate-mark)))
;; resettle the previous occupant
(global-set-key "\C-cw" &aposcount-words-region)
C-M-SPC C-M-SPC M-(
to wrap the
following two function arguments in parentheses. And you can hit
M-h
a few times to mark some blocks of text or code, then operate on
them with commands like M-%
and C-/
which behave differently when
the region is active.1
Comparing these mitigations
Both of these mitigations handle the second of the two disadvantages
of Transient Mark mode given above. What remains, then, is
C-SPC
C-SPC
instead of having a single binding, C-SPC
, for all manual
mark setting2C-SPC C-SPC
, M-=
or one of the mark-*
commands?mark-*
commands activate the mark comes
from an emacs-devel post by Stefan Monnier in the archives linked
above. C-SPC C-SPC
. I
don t believe there are any easily rebindable keys which are
easier to type than typing C-SPC
twice. And this does not deal
with the two distinct mark-setting operations problem. C-SPC
and which should get C-SPC C-SPC
. Next.